package Presentacion.Principal.core;

import java.awt.Font;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Properties;

import javax.swing.ImageIcon;

/**
 * Esta clase es la encargada de buscar en el archivo de configuracion, que 
 * corresponda a la ventana pasada como parametro, todos los datos variables
 * que diche ventana tiene, como por ejemplo el icono a mostrar, el nombre 
 * a mostrar, etc, etc.
 */
public class ResourceMap {

	Properties p = new Properties();
	
	// Voy a declarar un bjeto con el nombre del archivo que me pasen por paramtero
	
	public ResourceMap(String archivo){
		
		try {
//			p.load(new FileInputStream("etc/config/pantallas/" + archivo + ".properties"));
			p.load(new FileInputStream("src/Presentacion/Properties/" + archivo + ".properties"));
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		
		
		return;
	}
	
	public Font getFont(String string) {
		Object objDato;
		String strDato;
		
		objDato = p.get(string);

		strDato = objDato.toString();
		
		 //parsea un string (Monospaced-Plain-14)
		int indx=strDato.indexOf("-",0);
		String name=strDato.substring(0,indx);
		
		int indx2=strDato.indexOf("-",indx+1);
		
		int len=strDato.length();
		String tamanio=strDato.substring(indx2+1,len);
		int iTamanio=Integer.valueOf(tamanio).intValue();
		
		return new Font(name, Font.PLAIN, iTamanio);
	}

	public String getString(String string) {
		Object objDato;
		String strDato;
		
		objDato = p.get(string);
		strDato = objDato.toString();

		return strDato;
	}

	public ImageIcon getIcon(String string) {
		Object objDato;
		String strDato;
		
		objDato = p.get(string);
		strDato = objDato.toString();

		return new ImageIcon(strDato);
	}

	public String getText(String string) {
		Object objDato;
		String strDato;
		
		objDato = p.get(string);
		strDato = objDato.toString();

		return strDato;
	}

}
